<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<HEAD>
     <TITLE>Noframes</TITLE>
     <link rel="stylesheet" type="text/css" href="../../../ss/2.css" id="thecss">
     <script type="text/javascript" src="../../../scripts/csschange.js"></script>
</HEAD>

<BODY onload="readSS()">

<br>
<center>
<table border=3 cellpadding=5 cellspacing=0>
<tr>
     <td><h1 class="pagetitle">Noframes</h1>
         <b><a href="../../../misc/suppkey.htm">Support Key:</a></b> 
         [<span class="ns">2</span>|<span class="ns">3</span>|<span class="ns">3.2</span>|<b><i class="fs">4</i></b>] 
         [<b class="s">X1</b>|<span class="ns">X1.1</span>]
         [<b class="s">IE3A1</b>|<b class="s">M3B2</b>|<b><i class="fs">N2</i></b>|<b class="s">O2.1</b>]</td>
     <td><a href="#what">What is it?</a><br>
         <a href="#attrib">Attributes</a><br>
         <a href="#example">Tag Example</a>
     </td>
     <td><a href="#model">Parent/Content Model</a><br>
         <a href="#tips">Tips &amp; Tricks</a><br>
         <a href="#peculiar">Browser Peculiarities</a></td>
</tr>
<tr><td align=center colspan=3>
<font size=2>= <span class="sitetitle">Index DOT Html</span> by <a href="../../../misc/email.htm">Brian Wilson</a> =</font>
</td></tr>
</table>

<font size=2>
     <a href="../../index.html">Main Index</a> |
     <a href="../../tree/htmltree.htm">Element Tree</a> |
     <a href="../../tagindex/a.htm">Element Index</a> |
     <a href="../../supportkey/a.htm">HTML Support History</a></font>
</center>
<hr align="center" width="25%">

<br><br>
<table border=1 cellspacing=0 cellpadding=5>
<tr><td>
<table border=0 cellspacing=0>
<tr>
   <th colspan=3 valign=bottom class="field"><big><u><b
       class="colheaders">&#160;&#160;&#160;Quick Statistics&#160;&#160;&#160;</b></u></big><br></th>
</tr>
<tr><th align=left><b class="l3heading"><a href="../stats.htm#et">End Tag:</a></b><br></th>
    <td rowspan=7>&nbsp;&nbsp;</td>
    <td><span class="magicword">Required</span></td></tr>
<tr><th align=left><b class="l3heading"><a href="../stats.htm#std">Standards Details:</a></b><br></th>
    <td>Transitional/Frameset DTDs ONLY in HTML 4.x and XHTML 1.0. Dropped in XHTML 1.1</td></tr>
<tr><th align=left><b class="l3heading"><a href="../stats.htm#xhtm">XHTML Modules:</a></b><br></th>
    <td><b class=alert>Frames</b></td></tr>
<tr><th align=left valign=top><b class="l3heading"><a href="../stats.htm#disp">CSS 'display' Type:</a></b><br></th>
    <td>"<b class="alert">inline</b>"</td></tr>
<tr><th align=left valign=top><b class="l3heading"><a href="../stats.htm#css">CSS Mapping:</a></b><br></th>
    <td>NA</td></tr>
<tr><th align=left><b class="l3heading"><a href="../stats.htm#rnd">Default Rendering:</a></b><br></th>
    <td>NA</td></tr>
<tr><th align=left><b class="l3heading"><a href="../stats.htm#w3docs">Official Docs:</a></b><br></th>
    <td><a href="http://www.w3.org/TR/html401/present/frames.html#h-16.4.1">HTML 4.x</a>, 
        <a href="http://www.w3.org/TR/xhtml-modularization/abstract_modules.html#s_framesmodule">XHTML 1.0</a></td></tr>
</table>
</td></tr>
</table>

<br>
<a name="what"></a>
<dl>
<dt><big><b class="mainheading">What is it?</b></big>
    <dd>This element is part of the FRAME syntax. As created by Netscape and
        implemented by other browsers, it is used to allow a regular HTML BODY
        structure to be nested in the FRAMESET structure. To older browsers that
        do not support the FRAMESET syntax, it appears that the document only
        contains the usual &lt;<b class="tagname">head</b>&gt; and
        &lt;<b class="tagname">body</b>&gt; structure [standard HTML behavior is
        to ignore tags that are not understood.] Frames capable browsers will
        ignore NOFRAMES content.
        <br><br>

        HTML 4.0 is the first proposed HTML standard to incorporate the FRAME
        syntax. A subtle change to the behavior has been added to its design,
        however. In the older version of the frame syntax a common, banner-like
        element is created as a subdocument. This would appear as a frame in a
        static location while navigating pages.
        <br><br>

        To view the content of the static frame in a non-supporting browser
        means that a second complete set of documents would need to be authored.
        Within a sub-document of the frame layout, NOFRAMES can now also be
        used to ignore sections of content. Such content blocks could include
        the information used in the static frame information of other sub-documents.
</dl>


<a name="attrib"></a>
<dl>
<dt><br><big><b class="mainheading">Common Attributes</b></big>
<dt><b class="subheading">%<a href="../attributes/core.htm">Core</a>%</b>
    <dd>[<span class="ns">2</span>|<span class="ns">3</span>|<span class="ns">3.2</span>|<b><i class="fs">4</i></b>] 
        [<b class="s">X1</b>|<span class="ns">X1.1</span>]
        [<b><i class="fs">IE4</i></b>|<span class="ns">M</span>|<b class="s">N6B1</b>|<b class="s">O3.5</b>]

<dt><b class="subheading">%<a href="../attributes/accessibility.htm">Accessibility</a>%</b>
    <dd>[<span class="ns">2</span>|<span class="ns">3</span>|<span class="ns">3.2</span>|<b><i class="fs">4</i></b>] 
        [<b class="s">X1</b>|<span class="ns">X1.1</span>]
        [<span class="ns">IE</span>|<span class="ns">M</span>|<span class="ns">N</span>|<b><i class="fs">O5</i></b>]

<dt><b class="subheading">%<a href="../attributes/events.htm">Events</a>%</b>
    <dd>[<span class="ns">2</span>|<span class="ns">3</span>|<span class="ns">3.2</span>|<b><i class="fs">4</i></b>] 
        [<b class="s">X1</b>|<span class="ns">X1.1</span>]
        [<span class="ns">IE</span>|<span class="ns">M</span>|<span class="ns">N</span>|<b class="s">O4</b>]

<dt><b class="subheading">%<a href="../attributes/language.htm">Language</a>%</b>
    <dd>[<span class="ns">2</span>|<span class="ns">3</span>|<span class="ns">3.2</span>|<b><i class="fs">4</i></b>] 
        [<b class="s">X1</b>|<span class="ns">X1.1</span>]
        [<span class="ns">IE</span>|<span class="ns">M</span>|<span class="ns">N</span>|<span class="ns">O</span>]
</dl>


<a name="example"></a>
<dl>
<dt><big><b class="mainheading">Example</b></big>
    <dd><div class="example">&lt;<b class="tagname">html</b>&gt;<br>
        &lt;<b class="tagname">head</b>&gt;<br>
        &#160;&#160;&#160;&#160;&lt;<b class="tagname">title</b>&gt;Frames
        Example&lt;/<b class="tagname">title</b>&gt;<br>
        &lt;/<b class="tagname">head</b>&gt;<br>
        &lt;<b class="tagname">frameset</b>
        <span class="tagattrib">rows</span>=&quot;20,25%,*&quot;&gt;<br>
        &#160;&#160;&#160;&#160;&lt;<b class="tagname">frame</b>
        <span class="tagattrib">src</span>=&quot;frame1.html&quot;
        <span class="tagattrib">name</span>=&quot;frame1&quot; /&gt;<br>
        &#160;&#160;&#160;&#160;&lt;<b class="tagname">frame</b>
        <span class="tagattrib">src</span>=&quot;frame2.html&quot;
        <span class="tagattrib">name</span>=&quot;frame2&quot; /&gt;<br>
        &#160;&#160;&#160;&#160;&lt;<b class="tagname">frameset</b>
        <span class="tagattrib">cols</span>=&quot;30%,*&quot;&gt;<br>
        &#160;&#160;&#160;&#160;
        &#160;&#160;&#160;&#160;&lt;<b class="tagname">frame</b>
        <span class="tagattrib">src</span>=&quot;frame3.html&quot;
        <span class="tagattrib">name</span>=&quot;frame3&quot; /&gt;<br>
        &#160;&#160;&#160;&#160;
        &#160;&#160;&#160;&#160;&lt;<b class="tagname">frame</b>
        <span class="tagattrib">src</span>=&quot;frame4.html&quot;
        <span class="tagattrib">name</span>=&quot;frame4&quot; /&gt;<br>
        &#160;&#160;&#160;&#160;&lt;/<b class="tagname">frameset</b>&gt;<br>
        &lt;<b class="tagname">noframes</b>&gt;<br>
        &#160;&#160;&#160;&#160;&lt;<b class="tagname">body</b>&gt;<br>
        &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;This text
        will appear only if the browser does not support frames.<br>
        &#160;&#160;&#160;&#160;&lt;/<b class="tagname">body</b>&gt;<br>
        &lt;/<b class="tagname">noframes</b>&gt;<br>
        &lt;/<b class="tagname">frameset</b>&gt;<br>
        &lt;/<b class="tagname">html</b>&gt;</div>
</dl>


<a name="model"></a>
<dl>
<dt><big><b class="mainheading">Parent Model</b></big>
    <dd><b class="subheading">New Parent Model</b> <a href="#tips">*</a><br>
        <b class="alert">%<a href="../shorthands.htm#blockparent">Block Parent</a>%</b> |
        &lt;<a href="../f/frameset.htm">frameset</a>&gt;
    <dd><b class="subheading">Old Parent Model</b> <a href="#tips">*</a><br>
        &lt;<a href="../f/frameset.htm">frameset</a>&gt;
<dt><big><b class="mainheading">Content Model</b></big>
    <dd><b class="alert">%<a href="../shorthands.htm#inlinecontent">In-line Content</a>%</b> |
        <b class="alert">%<a href="../shorthands.htm#blockcontent">Block Content</a>%</b> |
        &lt;<a href="../b/body.htm">body</a>&gt;
</dl>


<a name="tips"></a>
<big><b class="mainheading">Tips &amp; Tricks</b></big>
<ul>
    <li><b class="alert">DTD Note:</b> With the inclusion of frames capability in
        HTML 4.0 comes a slight, but much needed change to the concept. Previously,
        the NOFRAMES element was only used to give non-conforming browsers content
        in FRAMESET definition documents. A big problem with frames though is that
        when designing a common, banner-like sub-document, it would not be visible to
        browsers that didn't recognize frames when the sub-documents were browsed
        separately. An author would have to create a second complete set of documents
        that included the static frame material. Essentially, there was no way to
        make content <em>NOT</em> appear in sub-documents in a frame browsing
        scenario. HTML 4.0 now allows the NOFRAMES element to be used for making
        content in sub-documents invisible to framed browsers. [that looks
        confusing to me too. =) -ed.]
    <li>I have seen <em>MANY</em> people invoke the NOFRAMES element incorrectly.
        Common errors include using &lt;NOFRAME&gt; or &lt;NO&#160;FRAMES&gt;.
        Browsers generally do not have a problem with these errors, as anything
        non-frames related will be ignored in these cases. Considering the new
        HTML 4.0 use of NOFRAMES, authors will have to start using correct syntax
        as this use becomes popular.
    <li>It is <em>STRONGLY</em> recommended to include alternate body content
        in the NOFRAMES section of a frames definition document. Even if the content
        is a link to a non-framed version of the page, this provides users of frames
        incapable browsers the chance to view the content of your site.
    <li>DO NOT use the common line in the NOFRAMES element that reads something like:<br>
         <blockquote class="quotation">&quot;You are using a browser
         that does not support frames. Go get one <em><u>here</u></em>.&quot;</blockquote>
    <li>Some users may not <em>want</em> to use browsers that have frames features,
        or they simply may not currently have the capacity to use such a browser.
        If they wanted such a browser, <em>THEY WOULD ALREADY HAVE IT.</em> Keep
        this in mind when designing your pages.
    <li>Technically, it is very likely the NOFRAMES element currently serves
        little purpose other than to satisfy proper syntax and act as a structural
        nicety. Browsers that understand frames will not care about anything other
        than frame layout statements, and browsers that don't understand frames
        will not see the tag anyway. Still - playing nice and using the agreed
        syntax is still a very wise idea. =) The HTML 4.0 syntax change finally
        gives NOFRAMES something to do.
</ul>

<a name="peculiar"></a>
<big><b class="mainheading">Browser Peculiarities</b></big>
<ul>
    <li>Internet Explorer 4.0 supports the use of NOFRAMES in regular HTML
        documents to ignore content in framed browsing scenarios.
    <li>Anecdote: After the advent of frames, this line started appearing very frequently, and
        can still quite frequently be found when searching for information about frames:
        <blockquote class="quotation">&quot;If you can read this, you are using a 
        frames challenged browser. This document has been designed using frames. 
        To view frames download Netscape Navigator.&quot;</blockquote>
        This was the message used in the example page at Netscape's site describing
        how to use frames.
</ul>


<br>
<a href="../../../misc/copyright.htm">Boring Copyright Stuff...</a>

</BODY>
</HTML>
